几种压缩算法的压缩和速度比较 LZ4太快了 |
您所在的位置:网站首页 › 7z 压缩率 › 几种压缩算法的压缩和速度比较 LZ4太快了 |
Quick Benchmark: Gzip vs Bzip2 vs LZMA vs XZ vs LZ4 vs LZO
EDIT: Add zstd Contents[hide] 1 Selected archives2 Test conditions3 The file test results 3.1 Compressed file size in bytes3.2 Compression ratio3.3 Compression time3.4 Decompression time3.5 Memory requirements on compression3.6 Memory requirements on decompression4 Stream test 4.1 Time to compress4.2 Time to decompress4.3 Memory used4.4 Compression ratio 4.4.1 With the benchmark application5 Graphics6 Quick benchmark on ARM64 Selected archivesI have selected: Source of the kernel to test source compressionStream protocol with flush Test conditionsTests were run on a desktop: Intel Core i5 CPU 750 at 2.67GHz8GB of DDR3 memorytmpfs as ram disk is usedLinux kernel 3.3.2, gentoo amd64CFLAGS: -pipe -O2 -g -floop-block -floop-interchange -fgraphitebzip2-1.0.6-r3, xz-utils-5.0.3, gzip-1.4Only normal mode will be tested firstly. The file test resultsNote: The first column with numbers 1..9 indicates the compression setting passed to gzip, bzip2 and lzmash (e.g. "gzip -9"). Tarball mode from linux-3.3, original size: 466083840 (445M) Compressed file size in bytes gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop1124875819 (120M)93997047 (90M)85618192 (82M)72042179 (69M)85630688 (82M)72069084 (69M)165844264 (159M)168012430 (161M)2119040249 (114M)87741348 (84M)81480824 (78M)70264395 (68M)81492504 (78M)70282944 (68M)165844264 (159M)166987891 (160M)3114931686 (110M)84816957 (81MB)79575087 (76MB)69015118 (66MB)79586568 (76MB)69029204 (66MB)165844264 (159M)166987891 (160M)5102328357 (98M)81837328 (79M)69557610 (67M)67879362 (65M)69583428 (67M)67875988 (65M)-166987891 (160M)7100128597 (96M)80197758 (77M)67276420 (65M)66868212 (64M)67294092 (65M)66852780 (64M)-116205578 (111M)999740486 (96M)78963640 (76M)65841213 (63M)65362226 (63M)65859432 (63M)65372696 (63M)-114824102 (110M) Compression ratio gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop126.8%20.2%18.4%15.5%18.4%15.5%35.6%36.0%225.5%18.8%17.5%15.1%17.5%15.1%35.6%35.8%324.7%18.2%17.1%14.8%17.1%14.8%35.6%35.8%522.0%17.6%14.9%14.6%14.9%14.6%-35.8%721.5%17.2%14.4%14.3%14.4%14.3%-24.9%921.4%16.9%14.1%14.0%14.1%14.0%-24.6% Compression time gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop18.1s58.3s31.7s4m37s32.2s4m40s1.3s1.6s28.5s58.4s40.7s4m49s41.9s4m53s1.4s1.6s39.6s59.1s1m2s4m36s1m1s4m39s1.3s1.5s514s1m1s3m5s5m3m6s4m53s-1.5s721s1m2s4m14s5m52s4m13s5m57s-35s933s1m3s4m48s6m40s4m51s6m40s-1m5s gzip -1 vs lz4 -1 on x86: lz4 6.2x more fastgzip -1 vs lz4 -1 on ARM: lz4 3.6x more fast Decompression time gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop13.5s3.4s6.7s5.9s7.2s6.5s0.4s1.5s23s15.76.3s5.6s6.8s6.3s0.3s1.4s33.2s15.9s6s5.6s6.7s6.2s0.4s1.4s53.2s16s5.5s5.4s6.2s6s-1.5s73s15s5.3s5.3s5.9s5.8s-1.3s93s15s5s5.1s5.6s5.6s-1.2s Memory requirements on compression gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop10.4MB1.1MB8.3MB12.6MB8.3MB12.5MB12MB0.7MB20.4MB1.9MB15.8MB24MB15.8MB24MB12MB0.7MB30.4MB2.7MB30.7MB46.9MB30.8MB47M13.2MB0.7MB50.4MB4.2MB93MB93MB93MB93MB-0.7MB70.4MB5.7MB185MB185MB185MB185MB-0.9MB90.4MB7.2MB672MB673MB673MB673MB-0.9MB Note: lz4 it's the program using this size, the code for internal lz4 use very less memory Memory requirements on decompression gzipbzip2lzmalzma -exzxz -elz4lzop gzipbzip2lzmalzma -exzxz -elz4lzop10.1MB0.3MB1MB1MB1MB1MB13MB0.2MB20.1MB0.9MB2.1MB2.1MB2.1MB2.1MB12MB0.2MB30.1MB1.1MB4.1MB4.1MB4.0MB4.0MB13MB0.2MB50.1MB1.9MB8.1MB8.1MB8.1MB8.1MB-0.2MB70.1MB2.6MB16MB16MB16MB16MB-0.2MB90.1MB3.4MB64MB64MB64MB64MB-0.2MB Note: lz4 it's the program using this size, the code for internal lz4 use very less memoryCli used for -1 compression: time gzip -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;time gunzip linux-3.3.tar*time bzip2 -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;time bunzip2 linux-3.3.tar.bz2time lzma -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time unlzma linux-3.3.tar*time lzma -e -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time unlzma linux-3.3.tar*time xz -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time unxz linux-3.3.tar*time xz -e -1 linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time unxz linux-3.3.tar*time /home/user/lz4-read-only/lz4demo64 -c0 linux-3.3.tar linux-3.3.tar.lz4;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time /home/user/lz4-read-only/lz4demo64 -d linux-3.3.tar.lz4 linux-3.3.tar;rm linux-3.3.tar.*time lzop -1 linux-3.3.tar;rm linux-3.3.tar;du -ksh linux-3.3.tar*;ls -l linux-3.3.tar*;read PAUSe;time lzop -d linux-3.3.tar*;rm linux-3.3.tar.* Stream test Time to compress gzipzliblz4lz4hcnone gzipzliblz4lz4hcnone1376368130311102371391 3378362 5390392 7389387 9393384 Time to decompress gzipzliblz4lz4hcnone gzipzliblz4lz4hcnone1179717788097969218411831 317711780 518061960 718611851 918351806Messured with: timespec tstart,tstop; clock_gettime(CLOCK_REALTIME, &tstart); //compression/decompression clock_gettime(CLOCK_REALTIME, &tstop); compressionTime+=((quint64)tstop.tv_sec * 1000000LL + (quint64)tstop.tv_nsec / 1000LL)-((quint64)tstart.tv_sec * 1000000LL + (quint64)tstart.tv_nsec / 1000LL); Memory used gzipzliblz4lz4hcnonegzipzliblz4lz4hcnone0.5MB0.5MB0MB0MB0MBThe socket is always used as full duplex, then it's compression + decompression memory. Compression ratioIt's transferred size/raw size (lower is better) With the benchmark applicationUploaded at: https://github.com/alphaonex86/debug-devel/tree/master/QTcpCompressionBenchmark gzipzliblz4lz4hcnonegzipzliblz4lz4hcnone0.990.971.591.591The most over-head of small packet (3Bytes) is drop by high compression with zlib/gzip for the big packet. Graphics
A quick benchmark on ARM64 (odroid, Cortex A53), on kernel Image (12MB), use default compression level (-6) because no way to configure the compression level of btrfs The speed is on compressed stream, mean the hdd. xzgziplz4zstdSize4.2M5.5M7.8M5.8MCompression speed0.2 MB/s1.8 MB/s21.4 MB/s2.8 MB/sDecompression speed4.8 MB/s13.6 MB/s48.4 MB/s19.1 MB/s |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |